package com.menfan.saas.domain;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class ItemEntityExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    private Integer limit;

    private Integer offset;

    public ItemEntityExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    public void setLimit(Integer limit) {
        this.limit = limit;
    }

    public Integer getLimit() {
        return limit;
    }

    public void setOffset(Integer offset) {
        this.offset = offset;
    }

    public Integer getOffset() {
        return offset;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andSkuIdIsNull() {
            addCriterion("sku_id is null");
            return (Criteria) this;
        }

        public Criteria andSkuIdIsNotNull() {
            addCriterion("sku_id is not null");
            return (Criteria) this;
        }

        public Criteria andSkuIdEqualTo(Integer value) {
            addCriterion("sku_id =", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdNotEqualTo(Integer value) {
            addCriterion("sku_id <>", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdGreaterThan(Integer value) {
            addCriterion("sku_id >", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("sku_id >=", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdLessThan(Integer value) {
            addCriterion("sku_id <", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdLessThanOrEqualTo(Integer value) {
            addCriterion("sku_id <=", value, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdIn(List<Integer> values) {
            addCriterion("sku_id in", values, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdNotIn(List<Integer> values) {
            addCriterion("sku_id not in", values, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdBetween(Integer value1, Integer value2) {
            addCriterion("sku_id between", value1, value2, "skuId");
            return (Criteria) this;
        }

        public Criteria andSkuIdNotBetween(Integer value1, Integer value2) {
            addCriterion("sku_id not between", value1, value2, "skuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdIsNull() {
            addCriterion("spu_id is null");
            return (Criteria) this;
        }

        public Criteria andSpuIdIsNotNull() {
            addCriterion("spu_id is not null");
            return (Criteria) this;
        }

        public Criteria andSpuIdEqualTo(String value) {
            addCriterion("spu_id =", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotEqualTo(String value) {
            addCriterion("spu_id <>", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdGreaterThan(String value) {
            addCriterion("spu_id >", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdGreaterThanOrEqualTo(String value) {
            addCriterion("spu_id >=", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLessThan(String value) {
            addCriterion("spu_id <", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLessThanOrEqualTo(String value) {
            addCriterion("spu_id <=", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdLike(String value) {
            addCriterion("spu_id like", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotLike(String value) {
            addCriterion("spu_id not like", value, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdIn(List<String> values) {
            addCriterion("spu_id in", values, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotIn(List<String> values) {
            addCriterion("spu_id not in", values, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdBetween(String value1, String value2) {
            addCriterion("spu_id between", value1, value2, "spuId");
            return (Criteria) this;
        }

        public Criteria andSpuIdNotBetween(String value1, String value2) {
            addCriterion("spu_id not between", value1, value2, "spuId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdIsNull() {
            addCriterion("proprietor_id is null");
            return (Criteria) this;
        }

        public Criteria andProprietorIdIsNotNull() {
            addCriterion("proprietor_id is not null");
            return (Criteria) this;
        }

        public Criteria andProprietorIdEqualTo(Integer value) {
            addCriterion("proprietor_id =", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdNotEqualTo(Integer value) {
            addCriterion("proprietor_id <>", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdGreaterThan(Integer value) {
            addCriterion("proprietor_id >", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("proprietor_id >=", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdLessThan(Integer value) {
            addCriterion("proprietor_id <", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdLessThanOrEqualTo(Integer value) {
            addCriterion("proprietor_id <=", value, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdIn(List<Integer> values) {
            addCriterion("proprietor_id in", values, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdNotIn(List<Integer> values) {
            addCriterion("proprietor_id not in", values, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdBetween(Integer value1, Integer value2) {
            addCriterion("proprietor_id between", value1, value2, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorIdNotBetween(Integer value1, Integer value2) {
            addCriterion("proprietor_id not between", value1, value2, "proprietorId");
            return (Criteria) this;
        }

        public Criteria andProprietorNameIsNull() {
            addCriterion("proprietor_name is null");
            return (Criteria) this;
        }

        public Criteria andProprietorNameIsNotNull() {
            addCriterion("proprietor_name is not null");
            return (Criteria) this;
        }

        public Criteria andProprietorNameEqualTo(String value) {
            addCriterion("proprietor_name =", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameNotEqualTo(String value) {
            addCriterion("proprietor_name <>", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameGreaterThan(String value) {
            addCriterion("proprietor_name >", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameGreaterThanOrEqualTo(String value) {
            addCriterion("proprietor_name >=", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameLessThan(String value) {
            addCriterion("proprietor_name <", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameLessThanOrEqualTo(String value) {
            addCriterion("proprietor_name <=", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameLike(String value) {
            addCriterion("proprietor_name like", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameNotLike(String value) {
            addCriterion("proprietor_name not like", value, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameIn(List<String> values) {
            addCriterion("proprietor_name in", values, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameNotIn(List<String> values) {
            addCriterion("proprietor_name not in", values, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameBetween(String value1, String value2) {
            addCriterion("proprietor_name between", value1, value2, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andProprietorNameNotBetween(String value1, String value2) {
            addCriterion("proprietor_name not between", value1, value2, "proprietorName");
            return (Criteria) this;
        }

        public Criteria andCostPriceIsNull() {
            addCriterion("cost_price is null");
            return (Criteria) this;
        }

        public Criteria andCostPriceIsNotNull() {
            addCriterion("cost_price is not null");
            return (Criteria) this;
        }

        public Criteria andCostPriceEqualTo(Double value) {
            addCriterion("cost_price =", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceNotEqualTo(Double value) {
            addCriterion("cost_price <>", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceGreaterThan(Double value) {
            addCriterion("cost_price >", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("cost_price >=", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceLessThan(Double value) {
            addCriterion("cost_price <", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceLessThanOrEqualTo(Double value) {
            addCriterion("cost_price <=", value, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceIn(List<Double> values) {
            addCriterion("cost_price in", values, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceNotIn(List<Double> values) {
            addCriterion("cost_price not in", values, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceBetween(Double value1, Double value2) {
            addCriterion("cost_price between", value1, value2, "costPrice");
            return (Criteria) this;
        }

        public Criteria andCostPriceNotBetween(Double value1, Double value2) {
            addCriterion("cost_price not between", value1, value2, "costPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceIsNull() {
            addCriterion("market_price is null");
            return (Criteria) this;
        }

        public Criteria andMarketPriceIsNotNull() {
            addCriterion("market_price is not null");
            return (Criteria) this;
        }

        public Criteria andMarketPriceEqualTo(Double value) {
            addCriterion("market_price =", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceNotEqualTo(Double value) {
            addCriterion("market_price <>", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceGreaterThan(Double value) {
            addCriterion("market_price >", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("market_price >=", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceLessThan(Double value) {
            addCriterion("market_price <", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceLessThanOrEqualTo(Double value) {
            addCriterion("market_price <=", value, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceIn(List<Double> values) {
            addCriterion("market_price in", values, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceNotIn(List<Double> values) {
            addCriterion("market_price not in", values, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceBetween(Double value1, Double value2) {
            addCriterion("market_price between", value1, value2, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andMarketPriceNotBetween(Double value1, Double value2) {
            addCriterion("market_price not between", value1, value2, "marketPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceIsNull() {
            addCriterion("sell_price is null");
            return (Criteria) this;
        }

        public Criteria andSellPriceIsNotNull() {
            addCriterion("sell_price is not null");
            return (Criteria) this;
        }

        public Criteria andSellPriceEqualTo(Double value) {
            addCriterion("sell_price =", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotEqualTo(Double value) {
            addCriterion("sell_price <>", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceGreaterThan(Double value) {
            addCriterion("sell_price >", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("sell_price >=", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceLessThan(Double value) {
            addCriterion("sell_price <", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceLessThanOrEqualTo(Double value) {
            addCriterion("sell_price <=", value, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceIn(List<Double> values) {
            addCriterion("sell_price in", values, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotIn(List<Double> values) {
            addCriterion("sell_price not in", values, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceBetween(Double value1, Double value2) {
            addCriterion("sell_price between", value1, value2, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andSellPriceNotBetween(Double value1, Double value2) {
            addCriterion("sell_price not between", value1, value2, "sellPrice");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberIsNull() {
            addCriterion("available_number is null");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberIsNotNull() {
            addCriterion("available_number is not null");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberEqualTo(Integer value) {
            addCriterion("available_number =", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberNotEqualTo(Integer value) {
            addCriterion("available_number <>", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberGreaterThan(Integer value) {
            addCriterion("available_number >", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("available_number >=", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberLessThan(Integer value) {
            addCriterion("available_number <", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberLessThanOrEqualTo(Integer value) {
            addCriterion("available_number <=", value, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberIn(List<Integer> values) {
            addCriterion("available_number in", values, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberNotIn(List<Integer> values) {
            addCriterion("available_number not in", values, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberBetween(Integer value1, Integer value2) {
            addCriterion("available_number between", value1, value2, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andAvailableNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("available_number not between", value1, value2, "availableNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIsNull() {
            addCriterion("total_number is null");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIsNotNull() {
            addCriterion("total_number is not null");
            return (Criteria) this;
        }

        public Criteria andTotalNumberEqualTo(Integer value) {
            addCriterion("total_number =", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotEqualTo(Integer value) {
            addCriterion("total_number <>", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberGreaterThan(Integer value) {
            addCriterion("total_number >", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("total_number >=", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberLessThan(Integer value) {
            addCriterion("total_number <", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberLessThanOrEqualTo(Integer value) {
            addCriterion("total_number <=", value, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberIn(List<Integer> values) {
            addCriterion("total_number in", values, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotIn(List<Integer> values) {
            addCriterion("total_number not in", values, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberBetween(Integer value1, Integer value2) {
            addCriterion("total_number between", value1, value2, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andTotalNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("total_number not between", value1, value2, "totalNumber");
            return (Criteria) this;
        }

        public Criteria andDeliverModeIsNull() {
            addCriterion("deliver_mode is null");
            return (Criteria) this;
        }

        public Criteria andDeliverModeIsNotNull() {
            addCriterion("deliver_mode is not null");
            return (Criteria) this;
        }

        public Criteria andDeliverModeEqualTo(String value) {
            addCriterion("deliver_mode =", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeNotEqualTo(String value) {
            addCriterion("deliver_mode <>", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeGreaterThan(String value) {
            addCriterion("deliver_mode >", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeGreaterThanOrEqualTo(String value) {
            addCriterion("deliver_mode >=", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeLessThan(String value) {
            addCriterion("deliver_mode <", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeLessThanOrEqualTo(String value) {
            addCriterion("deliver_mode <=", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeLike(String value) {
            addCriterion("deliver_mode like", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeNotLike(String value) {
            addCriterion("deliver_mode not like", value, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeIn(List<String> values) {
            addCriterion("deliver_mode in", values, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeNotIn(List<String> values) {
            addCriterion("deliver_mode not in", values, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeBetween(String value1, String value2) {
            addCriterion("deliver_mode between", value1, value2, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andDeliverModeNotBetween(String value1, String value2) {
            addCriterion("deliver_mode not between", value1, value2, "deliverMode");
            return (Criteria) this;
        }

        public Criteria andOnSaleIsNull() {
            addCriterion("on_sale is null");
            return (Criteria) this;
        }

        public Criteria andOnSaleIsNotNull() {
            addCriterion("on_sale is not null");
            return (Criteria) this;
        }

        public Criteria andOnSaleEqualTo(Boolean value) {
            addCriterion("on_sale =", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotEqualTo(Boolean value) {
            addCriterion("on_sale <>", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleGreaterThan(Boolean value) {
            addCriterion("on_sale >", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleGreaterThanOrEqualTo(Boolean value) {
            addCriterion("on_sale >=", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleLessThan(Boolean value) {
            addCriterion("on_sale <", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleLessThanOrEqualTo(Boolean value) {
            addCriterion("on_sale <=", value, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleIn(List<Boolean> values) {
            addCriterion("on_sale in", values, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotIn(List<Boolean> values) {
            addCriterion("on_sale not in", values, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleBetween(Boolean value1, Boolean value2) {
            addCriterion("on_sale between", value1, value2, "onSale");
            return (Criteria) this;
        }

        public Criteria andOnSaleNotBetween(Boolean value1, Boolean value2) {
            addCriterion("on_sale not between", value1, value2, "onSale");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIsNull() {
            addCriterion("display_name is null");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIsNotNull() {
            addCriterion("display_name is not null");
            return (Criteria) this;
        }

        public Criteria andDisplayNameEqualTo(String value) {
            addCriterion("display_name =", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotEqualTo(String value) {
            addCriterion("display_name <>", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameGreaterThan(String value) {
            addCriterion("display_name >", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameGreaterThanOrEqualTo(String value) {
            addCriterion("display_name >=", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLessThan(String value) {
            addCriterion("display_name <", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLessThanOrEqualTo(String value) {
            addCriterion("display_name <=", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameLike(String value) {
            addCriterion("display_name like", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotLike(String value) {
            addCriterion("display_name not like", value, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameIn(List<String> values) {
            addCriterion("display_name in", values, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotIn(List<String> values) {
            addCriterion("display_name not in", values, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameBetween(String value1, String value2) {
            addCriterion("display_name between", value1, value2, "displayName");
            return (Criteria) this;
        }

        public Criteria andDisplayNameNotBetween(String value1, String value2) {
            addCriterion("display_name not between", value1, value2, "displayName");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNull() {
            addCriterion("brand_name is null");
            return (Criteria) this;
        }

        public Criteria andBrandNameIsNotNull() {
            addCriterion("brand_name is not null");
            return (Criteria) this;
        }

        public Criteria andBrandNameEqualTo(String value) {
            addCriterion("brand_name =", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotEqualTo(String value) {
            addCriterion("brand_name <>", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThan(String value) {
            addCriterion("brand_name >", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameGreaterThanOrEqualTo(String value) {
            addCriterion("brand_name >=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThan(String value) {
            addCriterion("brand_name <", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLessThanOrEqualTo(String value) {
            addCriterion("brand_name <=", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameLike(String value) {
            addCriterion("brand_name like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotLike(String value) {
            addCriterion("brand_name not like", value, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameIn(List<String> values) {
            addCriterion("brand_name in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotIn(List<String> values) {
            addCriterion("brand_name not in", values, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameBetween(String value1, String value2) {
            addCriterion("brand_name between", value1, value2, "brandName");
            return (Criteria) this;
        }

        public Criteria andBrandNameNotBetween(String value1, String value2) {
            addCriterion("brand_name not between", value1, value2, "brandName");
            return (Criteria) this;
        }

        public Criteria andPatternChIsNull() {
            addCriterion("pattern_ch is null");
            return (Criteria) this;
        }

        public Criteria andPatternChIsNotNull() {
            addCriterion("pattern_ch is not null");
            return (Criteria) this;
        }

        public Criteria andPatternChEqualTo(String value) {
            addCriterion("pattern_ch =", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotEqualTo(String value) {
            addCriterion("pattern_ch <>", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChGreaterThan(String value) {
            addCriterion("pattern_ch >", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_ch >=", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLessThan(String value) {
            addCriterion("pattern_ch <", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLessThanOrEqualTo(String value) {
            addCriterion("pattern_ch <=", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChLike(String value) {
            addCriterion("pattern_ch like", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotLike(String value) {
            addCriterion("pattern_ch not like", value, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChIn(List<String> values) {
            addCriterion("pattern_ch in", values, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotIn(List<String> values) {
            addCriterion("pattern_ch not in", values, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChBetween(String value1, String value2) {
            addCriterion("pattern_ch between", value1, value2, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternChNotBetween(String value1, String value2) {
            addCriterion("pattern_ch not between", value1, value2, "patternCh");
            return (Criteria) this;
        }

        public Criteria andPatternEnIsNull() {
            addCriterion("pattern_en is null");
            return (Criteria) this;
        }

        public Criteria andPatternEnIsNotNull() {
            addCriterion("pattern_en is not null");
            return (Criteria) this;
        }

        public Criteria andPatternEnEqualTo(String value) {
            addCriterion("pattern_en =", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotEqualTo(String value) {
            addCriterion("pattern_en <>", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnGreaterThan(String value) {
            addCriterion("pattern_en >", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_en >=", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLessThan(String value) {
            addCriterion("pattern_en <", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLessThanOrEqualTo(String value) {
            addCriterion("pattern_en <=", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnLike(String value) {
            addCriterion("pattern_en like", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotLike(String value) {
            addCriterion("pattern_en not like", value, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnIn(List<String> values) {
            addCriterion("pattern_en in", values, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotIn(List<String> values) {
            addCriterion("pattern_en not in", values, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnBetween(String value1, String value2) {
            addCriterion("pattern_en between", value1, value2, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternEnNotBetween(String value1, String value2) {
            addCriterion("pattern_en not between", value1, value2, "patternEn");
            return (Criteria) this;
        }

        public Criteria andPatternShortIsNull() {
            addCriterion("pattern_short is null");
            return (Criteria) this;
        }

        public Criteria andPatternShortIsNotNull() {
            addCriterion("pattern_short is not null");
            return (Criteria) this;
        }

        public Criteria andPatternShortEqualTo(String value) {
            addCriterion("pattern_short =", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotEqualTo(String value) {
            addCriterion("pattern_short <>", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortGreaterThan(String value) {
            addCriterion("pattern_short >", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortGreaterThanOrEqualTo(String value) {
            addCriterion("pattern_short >=", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLessThan(String value) {
            addCriterion("pattern_short <", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLessThanOrEqualTo(String value) {
            addCriterion("pattern_short <=", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortLike(String value) {
            addCriterion("pattern_short like", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotLike(String value) {
            addCriterion("pattern_short not like", value, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortIn(List<String> values) {
            addCriterion("pattern_short in", values, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotIn(List<String> values) {
            addCriterion("pattern_short not in", values, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortBetween(String value1, String value2) {
            addCriterion("pattern_short between", value1, value2, "patternShort");
            return (Criteria) this;
        }

        public Criteria andPatternShortNotBetween(String value1, String value2) {
            addCriterion("pattern_short not between", value1, value2, "patternShort");
            return (Criteria) this;
        }

        public Criteria andTireWidthIsNull() {
            addCriterion("tire_width is null");
            return (Criteria) this;
        }

        public Criteria andTireWidthIsNotNull() {
            addCriterion("tire_width is not null");
            return (Criteria) this;
        }

        public Criteria andTireWidthEqualTo(Float value) {
            addCriterion("tire_width =", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotEqualTo(Float value) {
            addCriterion("tire_width <>", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthGreaterThan(Float value) {
            addCriterion("tire_width >", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthGreaterThanOrEqualTo(Float value) {
            addCriterion("tire_width >=", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthLessThan(Float value) {
            addCriterion("tire_width <", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthLessThanOrEqualTo(Float value) {
            addCriterion("tire_width <=", value, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthIn(List<Float> values) {
            addCriterion("tire_width in", values, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotIn(List<Float> values) {
            addCriterion("tire_width not in", values, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthBetween(Float value1, Float value2) {
            addCriterion("tire_width between", value1, value2, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andTireWidthNotBetween(Float value1, Float value2) {
            addCriterion("tire_width not between", value1, value2, "tireWidth");
            return (Criteria) this;
        }

        public Criteria andAdWordsIsNull() {
            addCriterion("ad_words is null");
            return (Criteria) this;
        }

        public Criteria andAdWordsIsNotNull() {
            addCriterion("ad_words is not null");
            return (Criteria) this;
        }

        public Criteria andAdWordsEqualTo(String value) {
            addCriterion("ad_words =", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotEqualTo(String value) {
            addCriterion("ad_words <>", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsGreaterThan(String value) {
            addCriterion("ad_words >", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsGreaterThanOrEqualTo(String value) {
            addCriterion("ad_words >=", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLessThan(String value) {
            addCriterion("ad_words <", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLessThanOrEqualTo(String value) {
            addCriterion("ad_words <=", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsLike(String value) {
            addCriterion("ad_words like", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotLike(String value) {
            addCriterion("ad_words not like", value, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsIn(List<String> values) {
            addCriterion("ad_words in", values, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotIn(List<String> values) {
            addCriterion("ad_words not in", values, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsBetween(String value1, String value2) {
            addCriterion("ad_words between", value1, value2, "adWords");
            return (Criteria) this;
        }

        public Criteria andAdWordsNotBetween(String value1, String value2) {
            addCriterion("ad_words not between", value1, value2, "adWords");
            return (Criteria) this;
        }

        public Criteria andLabelIsNull() {
            addCriterion("label is null");
            return (Criteria) this;
        }

        public Criteria andLabelIsNotNull() {
            addCriterion("label is not null");
            return (Criteria) this;
        }

        public Criteria andLabelEqualTo(String value) {
            addCriterion("label =", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotEqualTo(String value) {
            addCriterion("label <>", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelGreaterThan(String value) {
            addCriterion("label >", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelGreaterThanOrEqualTo(String value) {
            addCriterion("label >=", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLessThan(String value) {
            addCriterion("label <", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLessThanOrEqualTo(String value) {
            addCriterion("label <=", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelLike(String value) {
            addCriterion("label like", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotLike(String value) {
            addCriterion("label not like", value, "label");
            return (Criteria) this;
        }

        public Criteria andLabelIn(List<String> values) {
            addCriterion("label in", values, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotIn(List<String> values) {
            addCriterion("label not in", values, "label");
            return (Criteria) this;
        }

        public Criteria andLabelBetween(String value1, String value2) {
            addCriterion("label between", value1, value2, "label");
            return (Criteria) this;
        }

        public Criteria andLabelNotBetween(String value1, String value2) {
            addCriterion("label not between", value1, value2, "label");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIsNull() {
            addCriterion("tire_aspect_ratio is null");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIsNotNull() {
            addCriterion("tire_aspect_ratio is not null");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioEqualTo(String value) {
            addCriterion("tire_aspect_ratio =", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotEqualTo(String value) {
            addCriterion("tire_aspect_ratio <>", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioGreaterThan(String value) {
            addCriterion("tire_aspect_ratio >", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioGreaterThanOrEqualTo(String value) {
            addCriterion("tire_aspect_ratio >=", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLessThan(String value) {
            addCriterion("tire_aspect_ratio <", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLessThanOrEqualTo(String value) {
            addCriterion("tire_aspect_ratio <=", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioLike(String value) {
            addCriterion("tire_aspect_ratio like", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotLike(String value) {
            addCriterion("tire_aspect_ratio not like", value, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioIn(List<String> values) {
            addCriterion("tire_aspect_ratio in", values, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotIn(List<String> values) {
            addCriterion("tire_aspect_ratio not in", values, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioBetween(String value1, String value2) {
            addCriterion("tire_aspect_ratio between", value1, value2, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireAspectRatioNotBetween(String value1, String value2) {
            addCriterion("tire_aspect_ratio not between", value1, value2, "tireAspectRatio");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIsNull() {
            addCriterion("tire_load_index is null");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIsNotNull() {
            addCriterion("tire_load_index is not null");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexEqualTo(String value) {
            addCriterion("tire_load_index =", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotEqualTo(String value) {
            addCriterion("tire_load_index <>", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexGreaterThan(String value) {
            addCriterion("tire_load_index >", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexGreaterThanOrEqualTo(String value) {
            addCriterion("tire_load_index >=", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLessThan(String value) {
            addCriterion("tire_load_index <", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLessThanOrEqualTo(String value) {
            addCriterion("tire_load_index <=", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexLike(String value) {
            addCriterion("tire_load_index like", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotLike(String value) {
            addCriterion("tire_load_index not like", value, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexIn(List<String> values) {
            addCriterion("tire_load_index in", values, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotIn(List<String> values) {
            addCriterion("tire_load_index not in", values, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexBetween(String value1, String value2) {
            addCriterion("tire_load_index between", value1, value2, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireLoadIndexNotBetween(String value1, String value2) {
            addCriterion("tire_load_index not between", value1, value2, "tireLoadIndex");
            return (Criteria) this;
        }

        public Criteria andTireRimIsNull() {
            addCriterion("tire_rim is null");
            return (Criteria) this;
        }

        public Criteria andTireRimIsNotNull() {
            addCriterion("tire_rim is not null");
            return (Criteria) this;
        }

        public Criteria andTireRimEqualTo(String value) {
            addCriterion("tire_rim =", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotEqualTo(String value) {
            addCriterion("tire_rim <>", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimGreaterThan(String value) {
            addCriterion("tire_rim >", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimGreaterThanOrEqualTo(String value) {
            addCriterion("tire_rim >=", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLessThan(String value) {
            addCriterion("tire_rim <", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLessThanOrEqualTo(String value) {
            addCriterion("tire_rim <=", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimLike(String value) {
            addCriterion("tire_rim like", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotLike(String value) {
            addCriterion("tire_rim not like", value, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimIn(List<String> values) {
            addCriterion("tire_rim in", values, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotIn(List<String> values) {
            addCriterion("tire_rim not in", values, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimBetween(String value1, String value2) {
            addCriterion("tire_rim between", value1, value2, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRimNotBetween(String value1, String value2) {
            addCriterion("tire_rim not between", value1, value2, "tireRim");
            return (Criteria) this;
        }

        public Criteria andTireRofIsNull() {
            addCriterion("tire_rof is null");
            return (Criteria) this;
        }

        public Criteria andTireRofIsNotNull() {
            addCriterion("tire_rof is not null");
            return (Criteria) this;
        }

        public Criteria andTireRofEqualTo(String value) {
            addCriterion("tire_rof =", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotEqualTo(String value) {
            addCriterion("tire_rof <>", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofGreaterThan(String value) {
            addCriterion("tire_rof >", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofGreaterThanOrEqualTo(String value) {
            addCriterion("tire_rof >=", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLessThan(String value) {
            addCriterion("tire_rof <", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLessThanOrEqualTo(String value) {
            addCriterion("tire_rof <=", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofLike(String value) {
            addCriterion("tire_rof like", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotLike(String value) {
            addCriterion("tire_rof not like", value, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofIn(List<String> values) {
            addCriterion("tire_rof in", values, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotIn(List<String> values) {
            addCriterion("tire_rof not in", values, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofBetween(String value1, String value2) {
            addCriterion("tire_rof between", value1, value2, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireRofNotBetween(String value1, String value2) {
            addCriterion("tire_rof not between", value1, value2, "tireRof");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIsNull() {
            addCriterion("tire_speedrating is null");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIsNotNull() {
            addCriterion("tire_speedrating is not null");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingEqualTo(String value) {
            addCriterion("tire_speedrating =", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotEqualTo(String value) {
            addCriterion("tire_speedrating <>", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingGreaterThan(String value) {
            addCriterion("tire_speedrating >", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingGreaterThanOrEqualTo(String value) {
            addCriterion("tire_speedrating >=", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLessThan(String value) {
            addCriterion("tire_speedrating <", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLessThanOrEqualTo(String value) {
            addCriterion("tire_speedrating <=", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingLike(String value) {
            addCriterion("tire_speedrating like", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotLike(String value) {
            addCriterion("tire_speedrating not like", value, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingIn(List<String> values) {
            addCriterion("tire_speedrating in", values, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotIn(List<String> values) {
            addCriterion("tire_speedrating not in", values, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingBetween(String value1, String value2) {
            addCriterion("tire_speedrating between", value1, value2, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andTireSpeedratingNotBetween(String value1, String value2) {
            addCriterion("tire_speedrating not between", value1, value2, "tireSpeedrating");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIsNull() {
            addCriterion("variant_description is null");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIsNotNull() {
            addCriterion("variant_description is not null");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionEqualTo(String value) {
            addCriterion("variant_description =", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotEqualTo(String value) {
            addCriterion("variant_description <>", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionGreaterThan(String value) {
            addCriterion("variant_description >", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionGreaterThanOrEqualTo(String value) {
            addCriterion("variant_description >=", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLessThan(String value) {
            addCriterion("variant_description <", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLessThanOrEqualTo(String value) {
            addCriterion("variant_description <=", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionLike(String value) {
            addCriterion("variant_description like", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotLike(String value) {
            addCriterion("variant_description not like", value, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionIn(List<String> values) {
            addCriterion("variant_description in", values, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotIn(List<String> values) {
            addCriterion("variant_description not in", values, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionBetween(String value1, String value2) {
            addCriterion("variant_description between", value1, value2, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andVariantDescriptionNotBetween(String value1, String value2) {
            addCriterion("variant_description not between", value1, value2, "variantDescription");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIsNull() {
            addCriterion("tire_season is null");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIsNotNull() {
            addCriterion("tire_season is not null");
            return (Criteria) this;
        }

        public Criteria andTireSeasonEqualTo(String value) {
            addCriterion("tire_season =", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotEqualTo(String value) {
            addCriterion("tire_season <>", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonGreaterThan(String value) {
            addCriterion("tire_season >", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonGreaterThanOrEqualTo(String value) {
            addCriterion("tire_season >=", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLessThan(String value) {
            addCriterion("tire_season <", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLessThanOrEqualTo(String value) {
            addCriterion("tire_season <=", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonLike(String value) {
            addCriterion("tire_season like", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotLike(String value) {
            addCriterion("tire_season not like", value, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonIn(List<String> values) {
            addCriterion("tire_season in", values, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotIn(List<String> values) {
            addCriterion("tire_season not in", values, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonBetween(String value1, String value2) {
            addCriterion("tire_season between", value1, value2, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andTireSeasonNotBetween(String value1, String value2) {
            addCriterion("tire_season not between", value1, value2, "tireSeason");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIsNull() {
            addCriterion("is_delete is null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIsNotNull() {
            addCriterion("is_delete is not null");
            return (Criteria) this;
        }

        public Criteria andIsDeleteEqualTo(Boolean value) {
            addCriterion("is_delete =", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotEqualTo(Boolean value) {
            addCriterion("is_delete <>", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThan(Boolean value) {
            addCriterion("is_delete >", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteGreaterThanOrEqualTo(Boolean value) {
            addCriterion("is_delete >=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThan(Boolean value) {
            addCriterion("is_delete <", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteLessThanOrEqualTo(Boolean value) {
            addCriterion("is_delete <=", value, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteIn(List<Boolean> values) {
            addCriterion("is_delete in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotIn(List<Boolean> values) {
            addCriterion("is_delete not in", values, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteBetween(Boolean value1, Boolean value2) {
            addCriterion("is_delete between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andIsDeleteNotBetween(Boolean value1, Boolean value2) {
            addCriterion("is_delete not between", value1, value2, "isDelete");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNull() {
            addCriterion("create_user is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIsNotNull() {
            addCriterion("create_user is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserEqualTo(String value) {
            addCriterion("create_user =", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotEqualTo(String value) {
            addCriterion("create_user <>", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThan(String value) {
            addCriterion("create_user >", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserGreaterThanOrEqualTo(String value) {
            addCriterion("create_user >=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThan(String value) {
            addCriterion("create_user <", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLessThanOrEqualTo(String value) {
            addCriterion("create_user <=", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserLike(String value) {
            addCriterion("create_user like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotLike(String value) {
            addCriterion("create_user not like", value, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserIn(List<String> values) {
            addCriterion("create_user in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotIn(List<String> values) {
            addCriterion("create_user not in", values, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserBetween(String value1, String value2) {
            addCriterion("create_user between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andCreateUserNotBetween(String value1, String value2) {
            addCriterion("create_user not between", value1, value2, "createUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNull() {
            addCriterion("update_user is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIsNotNull() {
            addCriterion("update_user is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserEqualTo(String value) {
            addCriterion("update_user =", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotEqualTo(String value) {
            addCriterion("update_user <>", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThan(String value) {
            addCriterion("update_user >", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserGreaterThanOrEqualTo(String value) {
            addCriterion("update_user >=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThan(String value) {
            addCriterion("update_user <", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLessThanOrEqualTo(String value) {
            addCriterion("update_user <=", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserLike(String value) {
            addCriterion("update_user like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotLike(String value) {
            addCriterion("update_user not like", value, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIn(List<String> values) {
            addCriterion("update_user in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotIn(List<String> values) {
            addCriterion("update_user not in", values, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserBetween(String value1, String value2) {
            addCriterion("update_user between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andUpdateUserNotBetween(String value1, String value2) {
            addCriterion("update_user not between", value1, value2, "updateUser");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("update_time is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("update_time is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(Date value) {
            addCriterion("update_time =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(Date value) {
            addCriterion("update_time <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(Date value) {
            addCriterion("update_time >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("update_time >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(Date value) {
            addCriterion("update_time <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(Date value) {
            addCriterion("update_time <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<Date> values) {
            addCriterion("update_time in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<Date> values) {
            addCriterion("update_time not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(Date value1, Date value2) {
            addCriterion("update_time between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(Date value1, Date value2) {
            addCriterion("update_time not between", value1, value2, "updateTime");
            return (Criteria) this;
        }
    }

    /**
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}